Paul Eggert [Wed, 11 Sep 2019 17:19:07 +0000 (10:19 -0700)]
Reset dbus registered buses on dump load
Problem reported by Leonard Lausen (Bug#37331).
* src/dbusbind.c: Include pdumper.h.
(syms_of_dbusbind_for_pdumper):
New function, to reset the registered buses.
(syms_of_dbusbind): Use it, fixing a TODO.
Paul Eggert [Wed, 11 Sep 2019 15:50:02 +0000 (08:50 -0700)]
Fix auto-save with user-emacs-directory
* lisp/startup.el (auto-save-list-file-prefix): Delay initialization,
since the value depends on user-emacs-directory (Bug#37354).
Mattias Engdegård [Wed, 11 Sep 2019 09:18:38 +0000 (11:18 +0200)]
* lisp/emacs-lisp/elint.el (elint-directory-skip-re): Fix doc typo.
Katsumi Yamaoka [Wed, 11 Sep 2019 02:41:34 +0000 (02:41 +0000)]
Create a new overlay used to mark Attachment header (bug#37370)
* lisp/gnus/gnus-art.el (gnus-mime-inline-part)
(gnus-mm-display-part, gnus-mime-buttonize-attachments-in-header):
Create a new overlay used to mark Attachment header instead of
using existing overlays.
Stephen Leake [Tue, 10 Sep 2019 10:37:51 +0000 (03:37 -0700)]
Stephen Leake [Tue, 10 Sep 2019 10:36:15 +0000 (03:36 -0700)]
Support `cl-defstruct' in autoloads
* lisp/emacs-lisp/autoload.el (make-autoload): Add `cl-defstruct' to
"complex cases" list.
* lisp/emacs-lisp/cl-macs.el (cl-defstruct): Add :autoload-end to
limit what is declared in autoloads.el for a defstruct.
Ulf Jasper [Mon, 9 Sep 2019 16:35:02 +0000 (18:35 +0200)]
Handle missing start-time when importing ical event (Bug#33277)
* lisp/calendar/icalendar.el (icalendar--convert-ical-to-diary): Set
start time only if it is explicitly given in ical. Do not use
start-time as default for end-time (Bug#33277).
* test/lisp/calendar/icalendar-tests.el (icalendar-import-bug-33277):
New. Test fix for Bug#33277.
Stefan Kangas [Mon, 9 Sep 2019 02:14:50 +0000 (04:14 +0200)]
Match Python 3 code object names in "M-x pdb"
* lisp/progmodes/gud.el (gud-pdb-marker-regexp): Match Python 3 code
object names. (Bug#11679)
Stefan Kangas [Sun, 8 Sep 2019 23:04:23 +0000 (01:04 +0200)]
; * lisp/ps-print.el: Doc fix.
Stefan Kangas [Sun, 8 Sep 2019 22:24:18 +0000 (00:24 +0200)]
Remove final XEmacs compat code from dframe.el
* lisp/dframe.el (top-level): Doc fix.
(dframe-frame-parameter): Redefine as an obsolete function alias for
'frame-parameter'.
Stefan Monnier [Sun, 8 Sep 2019 22:41:43 +0000 (18:41 -0400)]
* lisp/emacs-lisp/cl-macs.el (cl-defstruct): Define setter functions.
When :noinline is specified one can't rely on setf expanding the
inlinable function to construct the setter.
Fixes bug#37283.
Stefan Kangas [Mon, 1 Jul 2019 14:16:06 +0000 (16:16 +0200)]
Remove support for upgrading from old bookmark file format
* lisp/bookmark.el (bookmark-alist-from-buffer): Remove support for
old bookmark file format. (Bug#37122)
(bookmark-upgrade-version-0-alist)
(bookmark-upgrade-file-format-from-0)
(bookmark-grok-file-format-version)
(bookmark-maybe-upgrade-file-format): Declare obsolete.
(bookmark-load): Don't call 'bookmark-maybe-upgrade-file-format'.
* etc/NEWS: Announce it.
Juri Linkov [Sun, 8 Sep 2019 20:27:23 +0000 (23:27 +0300)]
* lisp/tmm.el: Fix broken tmm-prompt (bug#34517)
* lisp/tmm.el (tmm-prompt): Don't duplicate items of tmm--history.
Don't reverse tmm-km-list for completion. Don't set the initial
position of 'tmm--history. Use reverse tmm--history as the list
of default values for M-n.
(tmm-add-prompt): Don't insert initial value to the minibuffer.
Alan Mackenzie [Sun, 8 Sep 2019 10:44:27 +0000 (10:44 +0000)]
Fix untidinesses in compile.el.
* lisp/progmodes/compile.el (compilation--margin-string): Renamed from
compilation-margin-string. Use defconst rather than defvar. Use propertize
rather than a separate put-text-property. Trim the doc string.
Michael Albinus [Sun, 8 Sep 2019 10:01:41 +0000 (12:01 +0200)]
Fix Bug#36090
* lisp/vc/vc-hg.el (vc-hg--pushpull, vc-hg-merge-branch)
(vc-hg-command): Disable pager. (Bug#36090)
Michael Albinus [Sun, 8 Sep 2019 08:13:13 +0000 (10:13 +0200)]
Fix Bug#37202
* test/lisp/shadowfile-tests.el (shadow-test08-shadow-todo)
(shadow-test09-shadow-copy-files): Use truename of
`shadow-test-remote-temporary-file-directory'. (Bug#37202)
Paul Eggert [Sun, 8 Sep 2019 01:08:12 +0000 (18:08 -0700)]
Fix bug when gc-cons-percentage is bumped to 0.8
Problem reported by Michael Heerdegen (Bug#37321).
* src/alloc.c (gc_threshold): New static var.
(bump_consing_until_gc): Change args from DIFF to THRESHOLD and
PERCENTAGE. All uses changed. When accounting for a changed
gc-cons-percentage, do not assume that total_bytes_of_live_objects
returns the same value now that it did the last time we were
called.
Stefan Kangas [Tue, 27 Aug 2019 01:36:05 +0000 (03:36 +0200)]
Use derived-mode-p consistently in info.el
* lisp/info.el (Info-hide-note-references, info-display-manual)
(info--manual-names): Use derived-mode-p. (Bug#27583)
Noam Postavsky [Sat, 7 Sep 2019 21:00:39 +0000 (17:00 -0400)]
Let byte-compiler recognize that local-variable-p implies boundp
* lisp/emacs-lisp/bytecomp.el (byte-compile-maybe-guarded): Add
arguments to local-variable-p to the bound list.
* lisp/image-mode.el (image-toggle-display-image): Remove no longer
needed boundp check.
Joel Rosdahl [Wed, 28 Aug 2019 19:00:00 +0000 (21:00 +0200)]
Fix flymake-proc temporary file deletion bug
* list/progmodes/flymake-proc.el (flymake-proc-create-temp-inplace):
Include a time string part (hour + minute + second + nanosecond) in
the temporary name to make it unique enough.
(flymake-proc-legacy-flymake): Store temporary file names in the
process for usage in the sentinel.
(flymake-proc--process-sentinel): Bind values of temporary file names
dynamically to values stored in the process so that the cleanup
function will delete the correct temporary file(s).
Fixes bug#31981.
Eli Zaretskii [Sat, 7 Sep 2019 12:53:57 +0000 (15:53 +0300)]
Support visiting compressed image files
* lisp/image-mode.el (image-toggle-display-image): Support
visiting compressed image files which are uncompressed by
jka-compr.el. (Bug#37330)
Michael Albinus [Sat, 7 Sep 2019 10:31:31 +0000 (12:31 +0200)]
Add traces in shadowfile
* lisp/shadowfile.el (shadow-add-to-todo)
(shadow-remove-from-todo, shadow-save-todo-file):
* test/lisp/shadowfile-tests.el (shadow-test08-shadow-todo):
Add traces.
Evgeny Zajcev [Wed, 4 Sep 2019 15:09:55 +0000 (18:09 +0300)]
Fix input method operation on read-only text
* lisp/international/quail.el (quail-input-method): Check also
read-only property of text in addition to the buffer's
read-only state.
Eli Zaretskii [Sat, 7 Sep 2019 09:42:52 +0000 (12:42 +0300)]
; (server-goto-toplevel): Fix comment to reflect the code.
Eli Zaretskii [Sat, 7 Sep 2019 09:33:03 +0000 (12:33 +0300)]
Allow client connections when in recursive-edit
* lisp/server.el (server-goto-toplevel): Check minibuffer
depth, not recursion depth. This avoids exiting
recursive-edit if a client connection is accepted during
recursive-edit. (Bug#37176)
Eli Zaretskii [Sat, 7 Sep 2019 09:26:08 +0000 (12:26 +0300)]
Set inhibit-compacting-font-caches to t by default on MS-Windows
* src/font.c (syms_of_font) [WINDOWSNT]: Set
inhibit-compacting-font-caches to t by default.
* etc/NEWS: Mention the change.
Eli Zaretskii [Sat, 7 Sep 2019 09:19:06 +0000 (12:19 +0300)]
Allow Zs characters to be composed
* src/composite.c (char_composable_p): Allow SPC and other Zs
characters to be composed.
* lisp/composite.el (compose-gstring-for-graphic): Don't
reject characters whose general category is Zs. (Bug#14461)
Eli Zaretskii [Sat, 7 Sep 2019 07:14:31 +0000 (10:14 +0300)]
Revert "file-truename now uses realpath for local files"
This reverts commit
a59839d7556ef85058e09b005f0ff32e59b20ec3.
This commit broke the MS-Windows build (because there's no
realpath on MS-Windows). Even if I change the implementation
to always signal an error on MS-Windows, the build fails.
Paul Eggert [Fri, 6 Sep 2019 21:30:33 +0000 (14:30 -0700)]
file-truename now uses realpath for local files
This uses fewer syscalls on GNU/Linux and other GNUish platforms.
* lisp/files.el (file-truename): Try fileio--truename
if there are no handlers.
* src/fileio.c: Include stdlib.h, for realpath.
(Ffileio__truename): New function.
Mauro Aranda [Wed, 28 Aug 2019 11:29:57 +0000 (08:29 -0300)]
Improve file name completion in file and directory widgets (Bug#7779)
* lisp/wid-edit.el (widget 'file, widget 'directory): Respect the option
read-file-name-completion-ignore-case.
(widget 'directory): Filter the file names, to only perform directory name
completion.
Amin Bandali [Sat, 17 Aug 2019 18:09:11 +0000 (14:09 -0400)]
Fix erc-lurker-update-status (bug#36843)
Broken since 2013-08-22 "* lisp/erc/erc.el: Use lexical-binding".
* lisp/erc/erc.el (erc-message-parsed): New variable.
(erc-display-message): Dynamically bind it.
(erc-lurker-update-status): Check it instead of using `parsed'
directly. This results in `erc-lurker-state' being properly updated
to keep track of non-lurkers, and thus `erc-lurker-p' returning
correct results rather than return t for everyone.
Paul Eggert [Thu, 5 Sep 2019 20:25:43 +0000 (13:25 -0700)]
Fix bugs when recalculating consing_until_gc
Problem reported by Joseph Mingrone (Bug#37006#72).
* src/alloc.c (watch_gc_cons_threshold)
(watch_gc_cons_percentage):
Don’t try to store an intmax_t into an int.
Redo to make the code clearer.
(watch_gc_cons_percentage):
Use gc_cons_threshold, not consing_until_gc.
Paul Eggert [Thu, 5 Sep 2019 18:42:56 +0000 (11:42 -0700)]
Port :safe-renegotiation test to GnuTLS < 3.6.3
Problem reported by Robert Pluim in
https://lists.gnu.org/r/emacs-devel/2019-09/msg00127.html
* src/gnutls.c (Fgnutls_peer_status): Simplify test for
whether the :safe-renegotiation result is needed, so that it
works all the way back to GnuTLS 2.12.2.
Lars Ingebrigtsen [Thu, 5 Sep 2019 11:26:08 +0000 (13:26 +0200)]
Further fix for network-security-protocol-checks
* lisp/net/nsm.el (network-security-protocol-checks): Fix the
defcustom type some more (bug#37306).
Lars Ingebrigtsen [Thu, 5 Sep 2019 11:23:07 +0000 (13:23 +0200)]
Fix defcustom type of network-security-protocol-checks
* lisp/net/nsm.el (network-security-protocol-checks): Fix the
defcustom type (bug#37306).
Paul Eggert [Thu, 5 Sep 2019 06:13:54 +0000 (23:13 -0700)]
Use plain ‘static’ for Emacs C inline functions
This improved performance of ‘make compile-always’ by 8.2%
on my platform (AMD Phenom II X4 910e, Fedora 30 x86-64).
* src/conf_post.h (INLINE, EXTERN_INLINE, INLINE_HEADER_BEGIN)
(INLINE_HEADER_END) [!EMACS_EXTERN_INLINE]: Use plain ‘static’.
Paul Eggert [Thu, 5 Sep 2019 00:43:16 +0000 (17:43 -0700)]
Tweak xd_append_arg to pacify -Wnull-dereference
* src/dbusbind.c (xd_append_arg): Redo to pacify gcc
-Wnull-dereference. Also, check that the Lisp string won’t
overrun the C signature buffer.
Robert Pluim [Mon, 2 Sep 2019 12:55:00 +0000 (14:55 +0200)]
Don't check for :safe-renegotiation with TLS1.3
* lisp/net/nsm.el (nsm-protocol-check--renegotiation-info-ext): Don't
check when using TLS1.3, renegotiation has been removed from TLS.
Reported in
<https://lists.gnu.org/archive/html/help-gnu-emacs/2019-09/msg00005.html>
Paul Eggert [Tue, 3 Sep 2019 19:16:21 +0000 (12:16 -0700)]
Don’t mention :safe-renegotiation in TLS 1.3
* src/gnutls.c (Fgnutls_peer_status): Don’t put the
safe-renegotiation indication into the status in TLS 1.3, which
removed support for renegotiation.
Robert Pluim [Wed, 4 Sep 2019 21:43:56 +0000 (23:43 +0200)]
Fix nsm for unencrypted connections
When connecting using a cleartext connection, nsm was erroring out and
tearing down the connection because it was trying to display
nonexistent certificate information.
* lisp/net/nsm.el (nsm-query-user): Only format certificate status
when it is valid. (Bug#37221)
Paul Eggert [Wed, 4 Sep 2019 18:08:34 +0000 (11:08 -0700)]
Port pdumper mmap to AIX
* src/pdumper.c (needs_mmap_retry_p) [_AIX]: Return true.
Problem observed on AIX 7.1 and 7.2 in GCC compile farm.
Paul Eggert [Wed, 4 Sep 2019 18:07:14 +0000 (11:07 -0700)]
Port to platforms with Xrender lib but not header
* configure.ac (HAVE_XRENDER): Also require ‘#include
<X11/extensions/Xrender.h>’ to work. Problem found
on gcc119 in GCC compile farm.
Mattias Engdegård [Wed, 4 Sep 2019 14:27:02 +0000 (16:27 +0200)]
Correct arguments to `skip-syntax-forward'
* lisp/wid-edit.el (widget-sexp-validate): Fix bad calls to
`skip-syntax-forward', whose argument is not a regexp.
Lars Ingebrigtsen [Wed, 4 Sep 2019 13:19:40 +0000 (15:19 +0200)]
Make the NSM not pop up an X dialogue on non-mouse actions
* lisp/emacs-lisp/rmc.el (read-multiple-choice): Don't pop up X
dialogues on (url-retrieve "https://expired.badssl.com/" #'ignore)
and the like.
Lars Ingebrigtsen [Fri, 30 Aug 2019 10:20:30 +0000 (12:20 +0200)]
Preserve more markers when reverting .gpg files
* lisp/epa-file.el (epa-file--replace-text): Gingerly replace the
text in the buffer to preserve as many markers as possible
(bug#34720). This emulates the behaviour of Finsert_file_contents
more accurately.
(epa-file-decode-and-insert): Remove compat code.
(epa-file-insert-file-contents): Use the new function.
* lisp/emacs-lisp/cl-lib.el (cl-incf): Add autoload cookie.
Mattias Engdegård [Wed, 4 Sep 2019 12:35:18 +0000 (14:35 +0200)]
Repair change to compilation-context-lines (bug#36832)
* lisp/progmodes/compile.el (compilation-set-window):
Restore proper behaviour when compilation-context-lines is nil,
which is the default.
Michael Albinus [Wed, 4 Sep 2019 12:13:13 +0000 (14:13 +0200)]
Further work on Bug#37202
* test/lisp/shadowfile-tests.el (shadow-debug): Set to t.
(shadow--tests-cleanup): Simplify.
(shadow-test*): Call `shadow-initialize'.
(shadow-test08-shadow-todo, shadow-test09-shadow-copy-files):
In cleanup, kill buffers used for test.
(top): Do not initialize.
Michael Albinus [Wed, 4 Sep 2019 07:37:37 +0000 (09:37 +0200)]
* lisp/net/tramp.el (tramp-process-sentinel): Use `process-buffer'.
Paul Eggert [Wed, 4 Sep 2019 06:40:32 +0000 (23:40 -0700)]
* src/systime.h (hz): #undef to work around AIX build issue.
Paul Eggert [Wed, 4 Sep 2019 04:54:58 +0000 (21:54 -0700)]
Prefer functions to macros in buffer.h
In buffer.h, prefer inline functions to function-like macros
when either will do. This helps avoid confusion about how
many times an arg is evaluated. On my platform, this patch
improves performance of ‘make compile-always’ by 5.7%.
Also, prefer enum constants to object-like macros
when either will do.
* src/buffer.h (BEG, BEG_BYTE, GAP_BYTES_DFL, GAP_BYTES_MIN)
(MAX_PER_BUFFER_VARS, NONEXISTENT_MODTIME_NSECS)
(UNKNOWN_MODTIME_NSECS, BUFFER_LISP_SIZE, BUFFER_REST_SIZE):
Now enum constants, instead of macros.
(BUFFER_CEILING_OF, BUFFER_FLOOR_OF, BUF_BEG, BUF_BEG_BYTE)
(BUF_BEGV, BUF_BEGV_BYTE, BUF_PT, BUF_PT_BYTE, BUF_ZV)
(BUF_ZV_BYTE, BUF_GPT_ADDR, BUF_Z_ADDR, BUF_GAP_END_ADDR)
(BUF_COMPUTE_UNCHANGED, SET_PT, TEMP_SET_PT, SET_PT_BOTH)
(TEMP_SET_PT_BOTH, BUF_TEMP_SET_PT, SET_BUF_BEGV, SET_BUF_ZV)
(SET_BUF_BEGV_BOTH, SET_BUF_ZV_BOTH, SET_BUF_PT_BOTH)
(BYTE_POS_ADDR, CHAR_POS_ADDR, CHAR_TO_BYTE, BYTE_TO_CHAR)
(PTR_BYTE_POS, FETCH_CHAR, FETCH_CHAR_AS_MULTIBYTE)
(BUF_BYTE_ADDRESS, BUF_CHAR_ADDRESS, BUF_PTR_BYTE_POS)
(BUF_FETCH_CHAR, BUF_FETCH_CHAR_AS_MULTIBYTE, BUF_FETCH_BYTE)
(BUFFER_PVEC_INIT, BUFFER_LIVE_P, BUFFER_HIDDEN_P)
(BUFFER_CHECK_INDIRECTION, OVERLAY_POSITION, PER_BUFFER_VALUE_P)
(SET_PER_BUFFER_VALUE_P, PER_BUFFER_IDX):
Now inline functions instead of macros.
Paul Eggert [Wed, 4 Sep 2019 04:54:58 +0000 (21:54 -0700)]
* src/xdisp.c (hscroll_window_tree): Fix type typo.
Paul Eggert [Wed, 4 Sep 2019 04:54:58 +0000 (21:54 -0700)]
Take last_per_buffer_idx private
This will simplify future changes. Turn the runtime check
into an eassert, since it’s not needed in production.
* src/buffer.c (last_per_buffer_idx): Now static.
(valid_per_buffer_idx): New function.
* src/buffer.h (PER_BUFFER_VALUE_P, SET_PER_BUFFER_VALUE_P): Use it.
Paul Eggert [Wed, 4 Sep 2019 04:53:36 +0000 (21:53 -0700)]
Avoid macros in pdumper.c when it’s easy
Problem with DUMP_SET_REFERRER mentioned by Pip Cet at end of:
https://lists.gnu.org/archive/html/emacs-devel/2019-07/msg00548.html
* src/pdumper.c (DANGEROUS, EMACS_RELOC_TYPE_BITS)
(EMACS_RELOC_LENGTH_BITS, DUMP_RELOC_TYPE_BITS)
(DUMP_RELOC_ALIGNMENT_BITS, DUMP_RELOC_OFFSET_BITS)
(DUMP_RELOCATION_ALIGNMENT, DUMP_ALIGNMENT)
(WEIGHT_NONE, WEIGHT_NORMAL, WEIGHT_STRONG)
(PDUMPER_MAX_OBJECT_SIZE):
Now a constant, not a macro.
(divide_round_up): Now a function, not a macro DIVIDE_ROUND_UP.
All uses changed.
(enum link_weight_enum, WEIGHT_NONE_VALUE)
(WEIGHT_NORMAL_VALUE, WEIGHT_STRONG_VALUE): Remove.
(struct link_weight): Just use an int.
(dump_set_referrer): New function, replacing DUMP_SET_REFERRER
macro with a different API. All uses changed.
(dump_clear_referrer): Rename from DUMP_CLEAR_REFERRER.
All uses changed.
(DEFINE_FROMLISP_FUNC, DEFINE_TOLISP_FUNC): Remove.
(intmax_t_from_lisp, intmax_t_to_lisp, dump_off_from_lisp)
(dump_off_to_lisp): Define without using macros,
(dump_off_from_lisp): Add an eassert range check.
(DUMP_FIELD_COPY): Simplify.
Paul Eggert [Wed, 4 Sep 2019 00:34:08 +0000 (17:34 -0700)]
Avoid casting -1 to possibly-unsigned enum
* src/alloc.c (mark_maybe_pointer):
* src/pdumper.h (pdumper_object_p_precise):
Use pdumper_valid_object_type_p.
* src/pdumper.c (pdumper_find_object_type_impl):
* src/pdumper.h (pdumper_find_object_type):
Return int, not enum Lisp_Type. All callers changed.
* src/pdumper.h (PDUMPER_NO_OBJECT): Do not cast -1 to enum
Lisp_Type; in theory, C18 says this could yield 7, which would
mean PDUMPER_NO_OBJECT == Lisp_Float (!).
(pdumper_valid_object_type_p): New function.
Daniel Colascione [Tue, 3 Sep 2019 20:16:21 +0000 (13:16 -0700)]
Run tramp cleanup in correct buffer
Fixes bug #37297.
* lisp/net/tramp.el (tramp-process-sentinel): Do process-end cleanup
in the tramp buffer, not a random file buffer.
Paul Eggert [Tue, 3 Sep 2019 20:03:34 +0000 (13:03 -0700)]
Sync consing_until_gc with gc-cons-threshold
Add watchers for gc-cons-threshold and gc-cons-percentage
that update consing_until_gc accordingly.
Suggested by Eli Zaretskii (Bug#37006#52).
* src/alloc.c (consing_threshold, bump_consing_until_gc)
(watch_gc_cons_threshold, watch_gc_cons_percentage):
New functions.
(garbage_collect_1): Use consing_threshold.
(syms_of_alloc): Arrange to watch gc-cons-threshold and
gc-cons-percentage.
Alan Mackenzie [Tue, 3 Sep 2019 17:33:26 +0000 (17:33 +0000)]
Use left margin to hold "=>" to indicate current error in fringeless windows
This applies to compilation-mode. It amends the fix for bug #36832.
* lisp/progmodes/compile.el (compilation-arrow-overlay): renamed from
overlay-arrow-overlay.
(compilation-margin-string, compilation--dummy-string): New variables.
(compilation-set-up-arrow-spec-in-margin)
(compilation-tear-down-arrow-spec-in-margin): New functions.
(compilation-set-overlay-arrow): Rewritten to use the new variables/functions.
Michael Albinus [Tue, 3 Sep 2019 11:55:42 +0000 (13:55 +0200)]
Fix Bug#37202
* lisp/shadowfile.el (shadow-debug): New defvar.
(shadow-read-files): Suppress error if there's no TODO file.
* test/lisp/shadowfile-tests.el (shadow-debug): Set to nil.
(shadow--tests-cleanup): New defun. Apply to all tests. (Bug#37202)
(shadow-test06-literal-groups): Cleanup temp buffer.
(shadow-test08-shadow-todo): Add debug messages.
(top): Cleanup initially.
Paul Eggert [Mon, 2 Sep 2019 19:37:52 +0000 (12:37 -0700)]
Update from Gnulib
This incorporates:
2019-08-25 intprops.h, verify.h: port better to clang
2019-08-21 New strip-trailing-space option for srclist-update
* .gitattributes: Remove doc/misc/texinfo.tex special case,
which is no longer needed now that Gnulib trims blank-at-eol.
* build-aux/install-sh, doc/misc/texinfo.tex, lib/intprops.h:
* lib/regex_internal.c, lib/verify.h: Copy from Gnulib.
Paul Eggert [Mon, 2 Sep 2019 18:32:50 +0000 (11:32 -0700)]
* doc/lispref/files.texi (Standard File Names): Mention .emacs.d too.
Robert Pluim [Mon, 2 Sep 2019 15:28:59 +0000 (17:28 +0200)]
Reword documentation markup description
* etc/NEWS: Reword temporary note about documentation updates.
Robert Pluim [Mon, 2 Sep 2019 15:26:10 +0000 (17:26 +0200)]
Add 'nsm-trust-local-network' to NEWS
* etc/NEWS: Describe 'nsm-trust-local-network', and warn against its
use.
Glenn Morris [Sun, 1 Sep 2019 21:35:31 +0000 (14:35 -0700)]
* admin/admin.el (set-version): Check for empty NEWS sections.
Paul Eggert [Sun, 1 Sep 2019 16:56:40 +0000 (09:56 -0700)]
Fix load-theme bug with user-emacs-directory
* lisp/custom.el (custom-theme-directory): Delay initialization,
since the value depends on user-emacs-directory (Bug#37256).
Glenn Morris [Sun, 1 Sep 2019 13:26:47 +0000 (06:26 -0700)]
; Auto-commit of loaddefs files.
Mattias Engdegård [Sun, 1 Sep 2019 12:26:18 +0000 (14:26 +0200)]
Clarify what counts as whitespace in `string-blank-p'
* lisp/emacs-lisp/subr-x.el (string-blank-p): Expand doc string.
Thomas Fitzsimmons [Sat, 31 Aug 2019 14:48:59 +0000 (10:48 -0400)]
package.el: Allow Package-Requires to span multiple lines (Bug#36301)
* lisp/emacs-lisp/package.el (lm-header-multiline): Declare
function.
(package-buffer-info): Parse Package-Requires with
lm-header-multiline instead of lm-header.
(Bug#36301)
Co-authored-by: Noam Postavsky <npostavs@gmail.com>
Paul Eggert [Sun, 1 Sep 2019 01:17:20 +0000 (18:17 -0700)]
Make user-emacs-directory a variable
This is in response to Eli’s review here:
https://lists.gnu.org/r/emacs-devel/2019-07/msg00712.html
* lisp/subr.el (user-emacs-directory): defvar, not defconst
Paul Eggert [Sun, 1 Sep 2019 01:16:17 +0000 (18:16 -0700)]
Improve documentation for recent XDG-related changes
Adjust documentation in the light of Eli’s review here:
https://lists.gnu.org/r/emacs-devel/2019-07/msg00712.html
* doc/emacs/custom.texi (Init File, Find Init):
* doc/lispref/files.texi (Standard File Names):
* doc/lispref/os.texi (Init File):
Paul Eggert [Sat, 31 Aug 2019 21:48:26 +0000 (14:48 -0700)]
* doc/lispref/customize.texi: Fix typo.
Paul Eggert [Sat, 31 Aug 2019 21:47:04 +0000 (14:47 -0700)]
Calculate user-emacs-directory on startup
Problem reported by Glenn Morris (Bug#583#56).
* lisp/startup.el (startup--xdg-config-default): New constant.
(startup--xdg-config-home-emacs): New var.
(startup--xdg-or-homedot): New function.
(normal-top-level): Use it to set user-emacs-directory early on.
(command-line): Also use it to determine the startup init directory.
* lisp/subr.el (user-emacs-directory): Just initialize to nil.
Paul Eggert [Sat, 31 Aug 2019 17:35:08 +0000 (10:35 -0700)]
Check instead of relying on NOTREACHED
NOTREACHED was designed for traditional lint decades ago,
and _Noreturn now normally subsumes its function.
In the one case in Emacs where NORETURN might help and _Noreturn does
not, check for NOTREACHED instead of assuming it.
* lib-src/etags.c (main):
* src/xterm.c (x_connection_closed):
Remove NOTREACHED after a call to a _Noreturn function, as NOTREACHED
is no longer needed there. Also, one of the NOTREACHEDs was
misplaced, which defeated traditional lint checking anyway.
* lib-src/pop.c (pop_getline): Redo so as to not need NOTREACHED.
* src/emacs.c (main): Use eassume (false) rather than NOTREACHED,
so that running with ENABLE_CHECKING catches any internal error
causing the toplevel Frecursive_edit to return.
Glenn Morris [Sat, 31 Aug 2019 17:30:14 +0000 (10:30 -0700)]
* test/lisp/net/tramp-tests.el (tramp-test21-file-links): More cleanup.
Andreas Schwab [Sat, 31 Aug 2019 10:39:16 +0000 (12:39 +0200)]
Fix compilation with CHECK_STRUCTS
* src/pdumper.c (dump_hash_table): Update hash of Lisp_Hash_Table.
Eli Zaretskii [Sat, 31 Aug 2019 06:58:45 +0000 (09:58 +0300)]
; * src/floatfns.c: Don't use non-ASCII characters in comments.
Eli Zaretskii [Sat, 31 Aug 2019 06:54:05 +0000 (09:54 +0300)]
Avoid signaling errors from ls-lisp--insert-directory on macOS
* lisp/ls-lisp.el (ls-lisp-sanitize): Don't assume the
directory entries for ".." and "." will either both be present
or both absent. (Bug#37236)
Mattias Engdegård [Thu, 29 Aug 2019 10:29:47 +0000 (12:29 +0200)]
* src/floatfns.c: Check against __FINITE_MATH_ONLY__ (bug#37140)
Michael Albinus [Fri, 30 Aug 2019 11:54:42 +0000 (13:54 +0200)]
Extend tramp--test-check-files (Bug#37228)
* test/lisp/net/tramp-tests.el (tramp--test-check-files): Test also
`directory-files-and-attributes'. (Bug#37228)
Koichi Arakawa [Fri, 30 Aug 2019 11:53:56 +0000 (13:53 +0200)]
Fix Tramp's directory-files-and-attributes-with-stat (Bug#37228)
* lisp/net/tramp-sh.el
(tramp-do-directory-files-and-attributes-with-stat): Handle file
names with spaces. (Bug#37228)
Copyright-paperwork-exempt: yes
Paul Eggert [Fri, 30 Aug 2019 07:24:07 +0000 (00:24 -0700)]
emacsclient: adjust to new config file location
* lib-src/emacsclient.c (open_config): New arg XDG, to respect
XDG_CONFIG_HOME, consistently with Emacs proper. Caller changed.
Use XDG convention if available, falling back on the old names
if not.
Paul Eggert [Fri, 30 Aug 2019 05:29:52 +0000 (22:29 -0700)]
Prefer ~/.config/emacs to ~/.emacs.d if neither exists
That way, when Emacs starts in a fresh home directory,
it prefers the new (XDG) convention rather than the old one.
* lisp/files.el (locate-user-emacs-file): Make the parent
directories of user-emacs-directory if needed. This is useful
if user-emacs-directory is "~/.config/emacs" and "~/.config"
does not yet exist.
* lisp/startup.el (command-line):
* lisp/subr.el (user-emacs-directory):
Prefer XDG_CONFIG_HOME to ~/.emacs.d if neither exists.
Nick Drozd [Thu, 29 Aug 2019 23:36:50 +0000 (18:36 -0500)]
Minor copyedits in ido.texi
* doc/misc/ido.texi (Overview)
(Interactive Substring Matching, Prefix Matching)
(Regexp Matching, Hidden Buffers and Files)
(Changing List Order, Find File At Point, Misc)
(All Matching, Replacement): Fix wording, markup and punctuation.
(Bug#37225)
Glenn Morris [Thu, 29 Aug 2019 18:12:12 +0000 (11:12 -0700)]
Merge from origin/emacs-26
1af1240 (origin/emacs-26, emacs-26) ; Remove empty NEWS sections
96dd019 (tag: emacs-26.3-rc1, tag: emacs-26.3) * etc/HISTORY: Add Ema...
# Conflicts:
# etc/NEWS
Glenn Morris [Thu, 29 Aug 2019 18:11:24 +0000 (11:11 -0700)]
; Merge from origin/emacs-26
The following commit was skipped:
4e59ad5 Bump Emacs version to 26.3
Glenn Morris [Thu, 29 Aug 2019 18:11:23 +0000 (11:11 -0700)]
Merge from origin/emacs-26
70829f8 ; ChangeLog.3 update
# Conflicts:
# ChangeLog.3
Glenn Morris [Thu, 29 Aug 2019 18:11:22 +0000 (11:11 -0700)]
; Merge from origin/emacs-26
The following commit was skipped:
a6d0172 * etc/AUTHORS: Update.
Glenn Morris [Thu, 29 Aug 2019 18:11:21 +0000 (11:11 -0700)]
Merge from origin/emacs-26
290fe4d * ; ChangeLog.3 update
e8f176b * etc/NEWS: Delete temporary markup.
# Conflicts:
# ChangeLog.3
# etc/NEWS
Glenn Morris [Thu, 29 Aug 2019 18:04:18 +0000 (11:04 -0700)]
; Fix earlier NEWS merge
Glenn Morris [Thu, 29 Aug 2019 17:59:53 +0000 (10:59 -0700)]
; Remove empty NEWS sections
Stefan Kangas [Tue, 20 Aug 2019 23:02:43 +0000 (01:02 +0200)]
Add new "make help" target
* GNUmakefile: Add new "help" target that shows a brief summary of
common make targets. (Bug#12411)
* INSTALL
* etc/NEWS: Announce it.
Lars Ingebrigtsen [Thu, 29 Aug 2019 07:18:40 +0000 (09:18 +0200)]
Tweak shr background colour handling
* lisp/net/shr.el (shr-fill-line): Extend the background to the
end of the line when folding lines.
Michael Albinus [Wed, 28 Aug 2019 18:39:33 +0000 (20:39 +0200)]
Clarify meaning of <filename> in test/README
Paul Eggert [Wed, 28 Aug 2019 18:34:48 +0000 (11:34 -0700)]
Don't worry about pre-1.0.0 alsa-lib include
Problem reported by Ergus in:
https://lists.gnu.org/r/emacs-devel/2019-08/msg00563.html
* configure.ac (ALSA_SUBDIR_INCLUDE): Do not define.
* src/sound.c: Assume ALSA_SUBDIR_INCLUDE.
Eli Zaretskii [Wed, 28 Aug 2019 11:00:01 +0000 (14:00 +0300)]
; Improve and clarify wording of recent commit in NEWS.
Paul Eggert [Tue, 27 Aug 2019 21:21:45 +0000 (14:21 -0700)]
Use XDG conventions more consistently
Fit in better with the XDG conventions.
Something like this was suggested in 2008 (Bug#583)
and the XDG conventions seem to have settled down by now.
* doc/emacs/custom.texi (Init File, Init Syntax, Find Init):
* doc/lispref/files.texi (Standard File Names):
* doc/lispref/os.texi (Init File):
* doc/misc/url.texi (Customization):
* etc/NEWS:
Adjust accordingly.
* lisp/startup.el (startup--load-user-init-file):
If init-file-name is nil, do not load from it; instead
just use the alt-file.
(find-init-path): Remove; no longer used.
(command-line): Don't check twice for XDG.
Look at XDG_CONFIG_HOME instead of assuming it's ~/.config.
Prefer XDG configuration if it exists; the user can disable
this by setting XDG_CONFIG_HOME to some other place.
* lisp/subr.el (user-emacs-directory):
Prefer XDG configuration if it exists.
Paul Eggert [Tue, 27 Aug 2019 21:19:38 +0000 (14:19 -0700)]
Port recent gnutls fixes to gcc -Wpointer-sign
* src/gnutls.c (Fgnutls_format_certificate):
Fix pointer signedness problem.
Juri Linkov [Tue, 27 Aug 2019 20:48:57 +0000 (23:48 +0300)]
Browser-like Info-history button menu (bug#37184)
* doc/misc/info.texi (Help-Int): Using tool-bar to navigate history.
* lisp/info.el (Info-history-menu): New function.
(Info-history-back-menu, Info-history-forward-menu): New commands.
(Info-mode-map): Bind Info-history-back-menu and
Info-history-forward-menu to tool-bar on C-key.
Michael Albinus [Tue, 27 Aug 2019 16:53:26 +0000 (18:53 +0200)]
Deactivate part of tramp--test-check-files on macOS (Bug#36940)
* test/lisp/net/tramp-tests.el (tramp--test-check-files): Do not
search for environment variables on macOS. (Bug#36940)
Eli Zaretskii [Tue, 27 Aug 2019 16:13:39 +0000 (19:13 +0300)]
; Fix commentary of last change.
Eli Zaretskii [Tue, 27 Aug 2019 15:47:24 +0000 (18:47 +0300)]
Fix crashes on MS-Windows when using GnuTLS connections
* src/gnutls.c (init_gnutls_functions) [WINDOWSNT]: Define and
load gnutls_free by an explicit call to GetProcAddress.
(gnutls_free) [WINDOWSNT]: Define as a macro that dereferences
a function pointer. (Bug#31946)
(Fgnutls_format_certificate): Use make_string_from_bytes
instead of going through an intermediate malloc'ed buffer.